package com.ruoyi.recharge.domain;

import java.math.BigDecimal;
import java.util.List;

import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
import com.ruoyi.common.annotation.Excel;

import com.entity.concat.ITimeEntity;
import com.ruoyi.common.core.domain.Entity;

/**
 * 充值记录 对象 mg_recharge
 *
 * @author 王强
 * @date 2023-12-22
 */
public class Recharge extends Entity implements ITimeEntity<Long>
{
    private static final long serialVersionUID = 1L;

    /** id */
    private Integer id;

    @Excel(name = "预存单号")
    private String orderSn;

    /** 会员ID */
    @Excel(name = "用户ID")
    private Long userId;

    /**
     * 真实姓名
     */
    @Excel(name = "姓名")
    private String realName;


    /** 充值金额 */
    @Excel(name = "预存金额")
    private BigDecimal account;

    /**
     * 支付方式
     */
    @Excel(name = "充值方式")
    private String pyName;

    /** 充值状态【0:待支付 1:充值成功 2:交易关闭】 */
    @Excel(name = "支付状态", readConverterExp = "0=待支付,1=已支付,2=已取消")
    private String payStatus;

    /**
     * 奖励名称
     */
    @Excel(name = "预存奖励")
    private String reward;

    /** 支付时间 */

    private Long payTime;
    @Excel(name = "充值时间")
    private Long createTime;

    /** 支付方式 */

    private Integer payId;


    /** 设备类型【0pc,1手机】 */
    private String payType;
    
   

    /** 奖励类型 0 享受折扣, 1 福利奖品 */
//    @Excel(name = "奖励类型", readConverterExp = "0=享受折扣,1=福利奖品,2=无")
    private String rewardType;




    /**
     * 开票
     */
    private Byte invoicing;

    /**
     * 手机号
     */
    private String phone;
    /**
     * 详细地址
     */
    private String address;
    /**
     * 省
     */
    private String prov;
    /**
     * 城市
     */
    private String city;
    /**
     * 区
     */
    private String distinguish;
    /**
     * 开始时间
     */
    private Long startTime;
    
    private String consignee;
    
    /**
     * 结束时间
     */
    private Long endTime;
    
    /**
     * 发票状态[0=未开票. 1= 审核中, 2=已开票, 3=未通过]
     */
    private Byte translate;
    
    private List<Integer> ids;
    

    public void setId(Integer id)
    {
        this.id = id;
    }

    public Integer getId()
    {
        return id;
    }
    public void setUserId(Long userId)
    {
        this.userId = userId;
    }

    public Long getUserId()
    {
        return userId;
    }
    public void setOrderSn(String orderSn)
    {
        this.orderSn = orderSn;
    }

    public String getOrderSn()
    {
        return orderSn;
    }
    public void setAccount(BigDecimal account)
    {
        this.account = account;
    }

    public BigDecimal getAccount()
    {
        return account;
    }
    public void setPayTime(Long payTime)
    {
        this.payTime = payTime;
    }

    public Long getPayTime()
    {
        return payTime;
    }
    public void setPayStatus(String payStatus)
    {
        this.payStatus = payStatus;
    }

    public String getPayStatus()
    {
        return payStatus;
    }
    public void setPayType(String payType)
    {
        this.payType = payType;
    }

    public String getPayType()
    {
        return payType;
    }
    public void setRewardType(String rewardType)
    {
        this.rewardType = rewardType;
    }

    public String getRewardType()
    {
        return rewardType;
    }

    public String getReward() {
        return reward;
    }

    public void setReward(String reward) {
        this.reward = reward;
    }

    public String getRealName() {
        return realName;
    }

    public void setRealName(String realName) {
        this.realName = realName;
    }

    public String getPhone() {
        return phone;
    }

    public void setPhone(String phone) {
        this.phone = phone;
    }

    public String getAddress() {
        return address;
    }

    public void setAddress(String address) {
        this.address = address;
    }

    public String getProv() {
        return prov;
    }

    public void setProv(String prov) {
        this.prov = prov;
    }

    public String getCity() {
        return city;
    }

    public void setCity(String city) {
        this.city = city;
    }

    public String getDistinguish() {
        return distinguish;
    }

    public void setDistinguish(String distinguish) {
        this.distinguish = distinguish;
    }

    public Long getStartTime() {
        return startTime;
    }

    public void setStartTime(Long startTime) {
        this.startTime = startTime;
    }

    public Long getEndTime() {
        return endTime;
    }

    public void setEndTime(Long endTime) {
        this.endTime = endTime;
    }

    @Override
    public Long getCreateTime() {
        return createTime;
    }

    @Override
    public void setCreateTime(Long createTime) {
        this.createTime = createTime;
    }

    public Integer getPayId() {
		return payId;
	}

	public void setPayId(Integer payId) {
		this.payId = payId;
	}


	@Override
    public String toString() {
        return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
            .append("id", getId())
            .append("userId", getUserId())
            .append("orderSn", getOrderSn())
            .append("account", getAccount())
            .append("createTime", getCreateTime())
            .append("payTime", getPayTime())
            .append("payStatus", getPayStatus())
            .append("payType", getPayType())
            .append("rewardType", getRewardType())
            .toString();
    }

	public String getPyName() {
		return pyName;
	}

	public void setPyName(String pyName) {
		this.pyName = pyName;
	}

	public Byte getInvoicing() {
		return invoicing;
	}

	public void setInvoicing(Byte invoicing) {
		this.invoicing = invoicing;
	}

	public Byte getTranslate() {
		return translate;
	}

	public void setTranslate(Byte translate) {
		this.translate = translate;
	}

	public List<Integer> getIds() {
		return ids;
	}

	public void setIds(List<Integer> ids) {
		this.ids = ids;
	}

	public String getConsignee() {
		return consignee;
	}

	public void setConsignee(String consignee) {
		this.consignee = consignee;
	}
}
